home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / pgp23src.zip / SRC / MAKEFILE.MSC < prev    next >
Text File  |  1993-06-11  |  6KB  |  159 lines

  1. # makefile for PGP (Microsoft C)
  2.  
  3. DEFINES    =  -DDYN_ALLOC -DSMALL_MEM
  4. ADEFINES = -DDYN_ALLOC=1 -DSS_NEQ_DS=1
  5.  
  6. PROJ    =PGP
  7.  
  8. CC    =cl -nologo -AL            # Compile command
  9. OPT    =    -Oilt            # Optimization and Testing flags
  10. CFLAGS    =-c -Gt $(OPT) $(DEFINES)     # Flags for compiler
  11.  
  12. LD        =link            # Link command
  13. LFLAGS    =/M /STACK:24576            # Flags for linker
  14. LIBS_EXT=                # Libraries
  15.  
  16. # for MASM 5.x and below
  17. ASM    =masm                # Assembler command
  18. ASMFLAGS= -ml                # Flags for assembler
  19. # for MASM 6.0 use the following instead
  20. #ASM    =ml -nologo             # Assembler command
  21. #ASMFLAGS=-Zm -Cp -c            # Flags for assembler
  22.  
  23. #OBJS_EXT=8086.obj                # ASM obj. files
  24. OBJS_EXT=8086.obj zmatch.obj       # ASM obj. files
  25.  
  26. EXT        =.EXE            # Whatever extension execuatables have
  27.  
  28. .c.obj:    
  29.     $(CC) $(CFLAGS) $(DEBUG) $*.c
  30.  
  31. all:    $(PROJ)$(EXT)
  32.  
  33. os2:    
  34.     $(MAKE) -f makefile.msc $(PROJ)2$(EXT) \
  35.     DEFINES="-DDYN_ALLOC -DSMALL_MEM -DOS2" ADEFINES="-DDYN_ALLOC=1" \
  36.     LFLAGS="-Lp -F 3000"
  37.  
  38. clean:
  39.     del $(PROJ)$(EXT)
  40.     del *.OBJ
  41.  
  42. scratch:    clean all
  43.  
  44. new:        clean all
  45.  
  46.  
  47. 8086.obj :    8086.asm
  48.     $(ASM) $(ASMFLAGS) 8086.asm ;
  49.  
  50. zmatch.obj :    zmatch.asm
  51.     $(ASM) $(ASMFLAGS) $(ADEFINES) zmatch.asm ;
  52.  
  53. ZIPOBJS= zbits.obj zdeflate.obj zfile_io.obj zglobals.obj \
  54.     zinflate.obj zip.obj zipup.obj ztrees.obj zunzip.obj 
  55.  
  56. # Use the first line for non-RSAREF version, the 2nd for RSAREF version.
  57. RSAOBJS= rsaglue.obj
  58. #RSAOBJS= rsaglue.obj rsa.obj nn.obj digit.obj r_random.obj r_stdlib.obj
  59.  
  60. OBJ1 =    pgp.obj crypto.obj keymgmt.obj fileio.obj \
  61.     mdfile.obj more.obj armor.obj mpilib.obj mpiio.obj
  62. OBJ2 =    genprime.obj rsagen.obj random.obj idea.obj passwd.obj \
  63.     md5.obj system.obj language.obj getopt.obj
  64. OBJ3 =    keyadd.obj config.obj keymaint.obj charset.obj $(OBJS_EXT)
  65.  
  66. $(PROJ)$(EXT): $(OBJ1) $(OBJ2) $(OBJ3) $(ZIPOBJS) $(RSAOBJS)
  67.     echo $(OBJ1)+ >pgp.rsp
  68.     echo $(OBJ2)+ >>pgp.rsp
  69.     echo $(OBJ3)+ >>pgp.rsp
  70.     echo $(ZIPOBJS)+ >>pgp.rsp
  71.     echo $(RSAOBJS); >>pgp.rsp
  72.     $(LD) $(LFLAGS) @pgp.rsp
  73.     del pgp.rsp
  74.  
  75. $(PROJ)2$(EXT): $(OBJ1) $(OBJ2) $(OBJ3) $(ZIPOBJS) $(RSAOBJS) pgp.def
  76.     $(CC) $(OBJ1) $(OBJ2) $(OBJ3) $(ZIPOBJS) $(RSAOBJS) pgp.def -o $@ $(LFLAGS)
  77.     bind -nologo $@
  78.  
  79. #    $(LD) @<<
  80. #$(LFLAGS) $(OBJ1) +
  81. #$(OBJ2) +
  82. #$(ZIPOBJS)
  83. #$(PROJ)$(EXT) , NUL , $(LIBS_EXT) ; 
  84. #<<
  85.  
  86. # How to make the RSAREF object files...
  87.  
  88. RSADIR = ../../rsaref/source/
  89.  
  90. rsa.obj: $(RSADIR)rsa.c global.h $(RSADIR)rsaref.h $(RSADIR)r_random.h \
  91.   $(RSADIR)md5.h
  92.     $(CC) -I$(RSADIR) -I. $(CFLAGSNOPT) -Dstatic= $(RSADIR)rsa.c
  93.  
  94. nn.obj: $(RSADIR)nn.c global.h $(RSADIR)rsaref.h $(RSADIR)nn.h $(RSADIR)digit.h
  95.     $(CC) -I$(RSADIR) -I. $(CFLAGS) $(RSADIR)nn.c
  96.  
  97. digit.obj: $(RSADIR)digit.c global.h $(RSADIR)rsaref.h $(RSADIR)nn.h \
  98.   $(RSADIR)digit.h
  99.     $(CC) -I$(RSADIR) -I. $(CFLAGS) $(RSADIR)digit.c
  100.  
  101. r_random.obj: $(RSADIR)r_random.c global.h $(RSADIR)rsaref.h \
  102.   $(RSADIR)r_random.h $(RSADIR)md5.h
  103.     $(CC) -I$(RSADIR) -I. $(CFLAGS) -Dstatic= $(RSADIR)r_random.c
  104.  
  105. r_stdlib.obj: $(RSADIR)r_stdlib.c global.h $(RSADIR)rsaref.h
  106.     $(CC) -I$(RSADIR) -I. $(CFLAGS) -Dstatic= $(RSADIR)r_stdlib.c
  107.  
  108.  
  109. ## Dependencies ##
  110. armor.obj : armor.c mpilib.h usuals.h platform.h fileio.h mpiio.h language.h \
  111.   pgp.h more.h armor.h crypto.h 
  112. charset.obj : charset.c usuals.h language.h charset.h system.h 
  113. config.obj : config.c usuals.h fileio.h pgp.h more.h armor.h config.h \
  114.   charset.h 
  115. crypto.obj : crypto.c mpilib.h usuals.h platform.h mpiio.h random.h idea.h \
  116.   crypto.h keymgmt.h keymaint.h mdfile.h md5.h fileio.h charset.h language.h \
  117.   pgp.h more.h armor.h exitpgp.h zipup.h rsaglue.h
  118. fileio.obj : fileio.c random.h usuals.h mpilib.h platform.h mpiio.h fileio.h \
  119.   language.h pgp.h more.h armor.h exitpgp.h charset.h system.h 
  120. genprime.obj : genprime.c mpilib.h usuals.h platform.h genprime.h random.h 
  121. getopt.obj : getopt.c getopt.h 
  122. idea.obj : idea.c idea.h usuals.h 
  123. keyadd.obj : keyadd.c mpilib.h usuals.h platform.h crypto.h fileio.h \
  124.   keymgmt.h charset.h language.h pgp.h more.h armor.h exitpgp.h keyadd.h \
  125.   keymaint.h 
  126. keymaint.obj : keymaint.c mpilib.h usuals.h platform.h random.h crypto.h \
  127.   fileio.h keymgmt.h keymaint.h mpiio.h charset.h language.h pgp.h more.h \
  128.   armor.h 
  129. keymgmt.obj : keymgmt.c system.h mpilib.h usuals.h platform.h idea.h random.h \
  130.   crypto.h fileio.h keymgmt.h rsagen.h mpiio.h language.h pgp.h more.h \
  131.   armor.h md5.h charset.h keymaint.h 
  132. language.obj : language.c usuals.h fileio.h language.h pgp.h more.h armor.h \
  133.   charset.h 
  134. md5.obj : md5.c md5.h 
  135. mdfile.obj : mdfile.c mpilib.h usuals.h platform.h mdfile.h md5.h fileio.h \
  136.   language.h pgp.h more.h armor.h 
  137. more.obj : more.c system.h mpilib.h usuals.h platform.h language.h fileio.h \
  138.   pgp.h more.h armor.h charset.h 
  139. mpiio.obj : mpiio.c mpilib.h usuals.h platform.h mpiio.h pgp.h more.h armor.h 
  140. mpilib.obj : mpilib.c mpilib.h usuals.h platform.h 
  141. passwd.obj : passwd.c random.h usuals.h md5.h language.h pgp.h more.h armor.h 
  142. pgp.obj : pgp.c system.h mpilib.h usuals.h platform.h random.h crypto.h \
  143.   fileio.h keymgmt.h language.h pgp.h more.h armor.h exitpgp.h charset.h \
  144.   getopt.h config.h keymaint.h keyadd.h rsaglue.h
  145. random.obj : random.c system.h random.h usuals.h language.h 
  146. rsagen.obj : rsagen.c mpilib.h usuals.h platform.h genprime.h rsagen.h \
  147.   random.h rsaglue.h
  148. rsaglue.obj : rsaglue.c mpilib.h mpiio.h pgp.h rsaglue.h
  149. system.obj : system.c exitpgp.h system.h charset.h 
  150. zbits.obj : zbits.c zip.h ztailor.h ziperr.h 
  151. zdeflate.obj : zdeflate.c zunzip.h usuals.h system.h zip.h ztailor.h ziperr.h 
  152. zfile_io.obj : zfile_io.c zunzip.h usuals.h system.h 
  153. zglobals.obj : zglobals.c zip.h ztailor.h ziperr.h 
  154. zinflate.obj : zinflate.c zunzip.h usuals.h system.h exitpgp.h 
  155. zip.obj : zip.c usuals.h fileio.h language.h pgp.h more.h armor.h exitpgp.h 
  156. zipup.obj : zipup.c zip.h ztailor.h ziperr.h zrevisio.h 
  157. ztrees.obj : ztrees.c zip.h ztailor.h ziperr.h 
  158. zunzip.obj : zunzip.c zunzip.h usuals.h system.h 
  159.